package com.kurumi.mapper;

import java.util.List;
import java.util.Map;

import com.kurumi.pojo.MedicalRecordBorrowApplyItem;
import com.kurumi.pojo.MedicalRecordPageBorrowApplyItem;
import com.kurumi.query.MedicalRecordBorrowQuery;

public interface MedicalRecordBorrowApplyItemMapper {
    
    
    int deleteByPrimaryKey(Integer id);

    int insert(MedicalRecordBorrowApplyItem record);

    int insertSelective(MedicalRecordBorrowApplyItem record);

    MedicalRecordBorrowApplyItem selectByPrimaryKey(Integer id);

    int updateByPrimaryKeySelective(MedicalRecordBorrowApplyItem record);

    int updateByPrimaryKey(MedicalRecordBorrowApplyItem record);
    
    
    /**
	 * 获取用于借阅的病案
	 * @return
	 */
	List<Map<String,Object>> getMedicalRecordOfBorrow(MedicalRecordBorrowQuery borrowQuery);
	
	/**
	 * 获取用于借阅的病案数量
	 * @return
	 */
	int getMedicalRecordCountOfBorrow(MedicalRecordBorrowQuery borrowQuery);
	
	
	/**
	 * 获取借阅申请的病案
	 * @return
	 */
	List<Map<String,Object>> getMedicalRecordOfBorrowApply(MedicalRecordBorrowQuery borrowQuery);
	
	/**
	 * 获取借阅申请的病案数量
	 * @return
	 */
	int getMedicalRecordCountOfBorrowApply(MedicalRecordBorrowQuery borrowQuery);
	
	
	int borrowReplyById(MedicalRecordBorrowApplyItem record);
	
	
	/**
	 * 获取借阅记录
	 * @return
	 */
	List<Map<String,Object>> getBorrowRecord(MedicalRecordBorrowQuery borrowQuery);
	
	/**
	 * 获取借阅记录数量
	 * @return
	 */
	int getBorrowRecordCount(MedicalRecordBorrowQuery borrowQuery);
	
	int insertPageBorrowApplyItem(MedicalRecordPageBorrowApplyItem record);
	
	
	/**
	 * 获取用于借阅的纸质病案
	 * @return
	 */
	List<Map<String,Object>> getMedicalRecordOfPageBorrow(MedicalRecordBorrowQuery borrowQuery);
	
	/**
	 * 获取用于借阅的纸质病案数量
	 * @return
	 */
	int getMedicalRecordCountOfPageBorrow(MedicalRecordBorrowQuery borrowQuery);
	
	/**
	 * 获取借阅申请中的纸质病案
	 * @return
	 */
	List<Map<String,Object>> getMedicalRecordOfPageBorrowApplying(MedicalRecordBorrowQuery borrowQuery);
	
	/**
	 * 获取用于借阅的纸质病案数量
	 * @return
	 */
	int getMedicalRecordCountOfPageBorrowApplying(MedicalRecordBorrowQuery borrowQuery);
	
	/**
	 * 获取待归还的纸质病案
	 * @return
	 */
	List<Map<String,Object>> getMedicalRecordOfPageBorrowGiveBack(MedicalRecordBorrowQuery borrowQuery);
	
	/**
	 * 获取待归还的纸质病案数量
	 * @return
	 */
	int getMedicalRecordCountOfPageBorrowGiveBack(MedicalRecordBorrowQuery borrowQuery);
	
	int pageBorrowGiveBackById(MedicalRecordPageBorrowApplyItem record);
	

	/**
	 * 获取借阅纸质记录
	 * @return
	 */
	List<Map<String,Object>> getPageBorrowRecord(MedicalRecordBorrowQuery borrowQuery);
	
	/**
	 * 获取借阅纸质记录数量
	 * @return
	 */
	int getPageBorrowRecordCount(MedicalRecordBorrowQuery borrowQuery);
	
	/**
	 * 纸质病案借阅批复
	 * @param record
	 * @return
	 */
	int updatePageBorrowReplyById(MedicalRecordPageBorrowApplyItem record);
	
	int deleteBorrowItemByBorrowId(Integer borrowId);
	
	int deletePageBorrowItemByPageBorrowId(Integer pageBorrowId);
}